static void gtk_scrolled_window_start_deceleration (GtkScrolledWindow *scrolled_window);
static gint _gtk_scrolled_window_get_scrollbar_spacing (GtkScrolledWindow *scrolled_window);
+static void gtk_scrolled_window_update_use_indicators (GtkScrolledWindow *scrolled_window);
static void remove_indicator (GtkScrolledWindow *sw,
Indicator *indicator);
static void indicator_stop_fade (Indicator *indicator);
gtk_css_node_set_state (priv->undershoot_node[i], gtk_css_node_get_state (widget_node));
g_object_unref (priv->undershoot_node[i]);
}
+
+ gtk_scrolled_window_update_use_indicators (scrolled_window);
}
/**
indicator->current_pos = 1.0;
}
+static void
+gtk_scrolled_window_sync_use_indicators (GtkScrolledWindow *scrolled_window)
+{
+ GtkScrolledWindowPrivate *priv = scrolled_window->priv;
+
+ if (priv->use_indicators)
+ {
+ setup_indicator (scrolled_window, &priv->hindicator, priv->hscrollbar);
+ setup_indicator (scrolled_window, &priv->vindicator, priv->vscrollbar);
+ }
+ else
+ {
+ remove_indicator (scrolled_window, &priv->hindicator);
+ remove_indicator (scrolled_window, &priv->vindicator);
+ }
+}
+
static void
gtk_scrolled_window_update_use_indicators (GtkScrolledWindow *scrolled_window)
{
{
priv->use_indicators = use_indicators;
- if (priv->use_indicators)
- {
- setup_indicator (scrolled_window, &priv->hindicator, priv->hscrollbar);
- setup_indicator (scrolled_window, &priv->vindicator, priv->vscrollbar);
- }
- else
- {
- remove_indicator (scrolled_window, &priv->hindicator);
- remove_indicator (scrolled_window, &priv->vindicator);
- }
+ if (gtk_widget_get_realized (GTK_WIDGET (scrolled_window)))
+ gtk_scrolled_window_sync_use_indicators (scrolled_window);
gtk_widget_queue_resize (GTK_WIDGET (scrolled_window));
}
priv->hindicator.scrollbar = priv->hscrollbar;
priv->vindicator.scrollbar = priv->vscrollbar;
- gtk_scrolled_window_update_use_indicators (scrolled_window);
+ gtk_scrolled_window_sync_use_indicators (scrolled_window);
}
static void
{
priv->overlay_scrolling = overlay_scrolling;
- if (gtk_widget_get_realized (GTK_WIDGET (scrolled_window)))
- gtk_scrolled_window_update_use_indicators (scrolled_window);
+ gtk_scrolled_window_update_use_indicators (scrolled_window);
g_object_notify_by_pspec (G_OBJECT (scrolled_window), properties[PROP_OVERLAY_SCROLLING]);
}